home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 1
/
Atari Mega Archive - Volume 1.iso
/
gnu
/
fpu881
/
src6.zoo
/
ftest.c
< prev
next >
Wrap
C/C++ Source or Header
|
1991-09-24
|
1KB
|
44 lines
#include <stdio.h>
#include <math.h>
main() {
static unsigned long min_d[2] =
{ 0x01000000L, 0x00000001L };
static unsigned long max_d[2] =
{ 0x400fffffL, 0xffffffffL };
static unsigned long min_f =
0x00800001L;
static unsigned long max_f =
0x3fffffffL;
double d;
float f;
f = (*((float *)&min_f));
printf("#define FLT_MIN %23.15e\n",(double)f);
f=(float)log10((double)f);
printf("#define FLT_MIN_10_EXP %d\n",(int)f);
f = (*((float *)&max_f));
printf("#define FLT_MAX %23.15e\n",(double)f);
f=(float)log10((double)f);
printf("#define FLT_MAX_10_EXP %d\n",(int)f);
d = (*((double *)&min_d[0]));
printf("#define DBL_MIN %23.15e\n",d);
d = log10(f);
printf("#define DBL_MIN_10_EXP -%d\n",(int)d);
/* Maximum int x such that FLT_RADIX**(x-1) is a representable double */
d = *((double *)&max_d[0]);
printf("#define DBL_MAX %23.15e\n",d);
/* Maximum int x such that 10**x is a representable double */
d = log10(f);
printf("#define DBL_MAX_10_EXP %d\n",(int)d);
/* Maximum double */
}